﻿$(function () {
    //loadingTable();
    $("#xiugai").linkbutton('disable');
    $("#shanc").linkbutton('disable');
});
    // 获取所有账户
function loadingTable() {
    $("#xiugai").linkbutton('enable');
    $("#shanc").linkbutton('enable');
    $('#load').datagrid({
        iconCls: 'icon-user', // 
        loadMsg: '数据加载中...', // S他ring / 当从远程站点加载数据时，显示的提示消息
        nowrap: true, // boolean / 设置为 true，则把数据显示在一行里。设置为 true 可提高加载性能。
        autoRowHeight: true, // boolean / 定义是否设置基于该行内容的行高度。设置为 false，则可以提高加载性能
        striped: true, // boolean / 设置为 true，则把行条纹化。（即奇偶行使用不同背景色）
        url: '/OrganizationSet/getMer', // 指向一个一般处理程序或者一个控制器，返回数据要求是Json格式
        sortName: 'OrgID', // String / 定义可以排序的列
        sortOrder: 'asc', // String / 定义列的排序顺序，只能用 'asc' 或 'desc'
        border: true, // boolean / 是否显示表格边框
        remoteSort: false, // boolean / 是否从服务器排序数据
        idField: 'OrgID', // String / 指示哪个字段是标识字段
        pageSize: 10, // 10，20，30，40，50 初始化页面大小
        singleSelect: true, // boolean / 设置为 true，则只允许选中一行，false可多选
        pagination: true, // boolean / 显示下端的分页工具
        rownumbers: true, // boolean / 显示行数 最左边
        // array / 数据网格（datagrid）的列（column）的配置对象
        // sortable - 设置为 true，则允许该列被排序
        // hidden - 设置为 true，则隐藏该列
        columns: [[
            { field: 'OrgID', title: '企业账户ID', width: 100, sortable: true, align: 'center' },
            { field: 'OrgName', title: '账户名称', width: 100, sortable: true, align: 'center' },
            { field: 'OrgPassword', title: "账户密码", width: 100, sortable: true, align: 'center' },
            { field: 'OrgPerson', title: "账户负责人", width: 100, sortable: true, align: 'center', },
            { field: 'OrgPhone', title: "账户联系电话", width: 150, sortable: true, align: 'center' },
            { field: 'OrgAddress', title: "账户联系地址", width:350, sortable: true, align: 'center' },
            { field: 'OrgMers', title: '商户集合',width:200, sortable: true, align: 'center' },
            {
                field: 'OrgWaltLimit', title: "账户额度（元）", width: 100, align: 'center', sortable: true, formatter: function (value, row, index) {
                    //return "ok";
                    return value / 100;
                }
            },
            {
                field: 'OrgWaltBalance', title: "可用余度（元）", width: 100, align: 'center', sortable: true, formatter: function (value, row, index) {
                    return value / 100;
                }
            },
            { field: 'OrgWaltLastTime', title: "最后修改时间", width: 150, sortable: true, align: 'center', },
            { field: 'OperNum', title: "最后修改人", width: 100, sortable: true, align: 'center' },
            { field: 'OrgState', title: '有效性', width: 100, sortable: true, align: 'center', hidden: true },
            {
                field: 'OrgID2', title: '操作', width: 150, sortable: true, align: 'center', formatter: function (value, row) {
                    return '<a href="#" onclick="updateOrgWaltLimit(' + row.OrgID + ', '+row.OrgWaltLimit +')">修改额度</a>';
                }
            },
        ]],
        toolbar: '#tb'
    });
}

    // 查询账户 
function Search() {
    var OrgName = $('#OrgName2').val();
    console.log(OrgName);
    var OrgPerson = $('#OrgPerson2').textbox('getValue');
    var OrgPhone = $('#OrgPhone2').val();
    if (OrgName != "" || OrgPerson != "" || OrgPhone != "") {
        $("#xiugai").linkbutton('enable');
        $("#shanc").linkbutton('enable');
        $('#load').datagrid({
            iconCls: 'icon-user', // 
            loadMsg: '数据加载中...', // S他ring / 当从远程站点加载数据时，显示的提示消息
            nowrap: true, // boolean / 设置为 true，则把数据显示在一行里。设置为 true 可提高加载性能。
            autoRowHeight: true, // boolean / 定义是否设置基于该行内容的行高度。设置为 false，则可以提高加载性能
            striped: true, // boolean / 设置为 true，则把行条纹化。（即奇偶行使用不同背景色）
            url: '/OrganizationSet/SearchMer?OrgName=' + OrgName + "&OrgPerson=" + OrgPerson + "&OrgPhone=" + OrgPhone,
            sortName: 'OrgID', // String / 定义可以排序的列
            sortOrder: 'asc', // String / 定义列的排序顺序，只能用 'asc' 或 'desc'
            border: true, // boolean / 是否显示表格边框
            remoteSort: false, // boolean / 是否从服务器排序数据
            idField: 'OrgID', // String / 指示哪个字段是标识字段
            pageSize: 10, // 10，20，30，40，50 初始化页面大小
            singleSelect: true, // boolean / 设置为 true，则只允许选中一行，false可多选
            pagination: true, // boolean / 显示下端的分页工具
            rownumbers: true, // boolean / 显示行数 最左边
            // array / 数据网格（datagrid）的列（column）的配置对象
            // sortable - 设置为 true，则允许该列被排序
            // hidden - 设置为 true，则隐藏该列
            columns: [[
                { field: 'OrgID', title: '企业账户ID', width: 100, sortable: true, align: 'center' },
                { field: 'OrgName', title: '账户名称', width: 100, sortable: true, align: 'center' },
                { field: 'OrgPassword', title: "账户密码", width: 100, align: 'center', sortable: true },
                { field: 'OrgPerson', title: "账户负责人", width: 100, sortable: true, align: 'center', },
                { field: 'OrgPhone', title: "账户联系电话", width: 150, sortable: true, align: 'center' },
                { field: 'OrgAddress', title: "账户联系地址", width: 350, sortable: true, align: 'center' },
                { field: 'OrgMers', title: '商户集合', width:200, sortable: true, align: 'center' },
                {
                    field: 'OrgWaltLimit', title: "账户额度（元）", width: 100, align: 'center', sortable: true, formatter: function (value, row, index) {
                        //return "ok";
                        return value / 100;
                    }
                },
                {
                    field: 'OrgWaltBalance', title: "可用余度（元）", width: 100, align: 'center', sortable: true, formatter: function (value, row, index) {
                        return value / 100;
                    }
                },
                { field: 'OrgWaltLastTime', title: "最后修改时间", width: 150, sortable: true, align: 'center', },
                { field: 'OperNum', title: "最后修改人", width: 100, sortable: true, align: 'center' },
                { field: 'OrgState', title: '有效性', width: 100, sortable: true, align: 'center', hidden: true },
                {
                    field: 'OrgID2', title: '操作', width: 150, sortable: true, align: 'center', formatter: function (value, row) {
                        return '<a href="#" onclick="updateOrgWaltLimit(' + row.OrgID + ', ' + row.OrgWaltLimit + ')">修改额度</a>';
                    }
                },
            ]],
            toolbar: '#tb'
        });
    }
}

//新增账户
function addMer() {
    //验证所有的文本框是否通过用户的验证
    var valid = $('#ff').form('validate');
    if (valid == false) {
        return false;
    }

    if ($('#OrgWaltLimit').val() < 0) {
        $.messager.alert("友情提示", "账户额度不能为负数");
        return false;
    }
    
    var postdata = {
        OrgName: $('#OrgName').val(),
        OrgPassword: $('#OrgPassword').val(),
        OrgPerson: $('#OrgPerson').val(),
        OrgPhone: $('#OrgPhone').val(),
        OrgAddress: $('#OrgAddress').val(),
        OrgMers: $("#OrgMers").combobox('getValues').join(','),
        OrgWaltLimit: ($('#OrgWaltLimit').val()) * 100,
        OrgWaltBalance: $('#OrgWaltBalance').val(),
        OrgWaltLastTime: $('#OrgWaltLastTime').val(),
        OrgWaltLastOper: $('#OrgWaltLastOper').val(),
        OrgState: $('#OrgState').val(),

    };
    $.post("/OrganizationSet/addMer", postdata).success(function (resp) {
        if (resp == "1") {
            $.messager.alert("友情提示", "添加成功");
            $('#add').window('close');//关闭弹窗
            loadingTable();
        }
        else {
            $.messager.alert("友情提示", "添加失败/商户集合不能手动输入！");
        }
    }).error(function (resp) { console.log(resp); });
}

// 删除账户
function DeleteMer() {
    // 获取所选行的数据
    var delMer = $('#load').datagrid("getSelections");
    if (delMer.length == 1) {
        $.messager.confirm("友情提示", "您确认要删除<font color='red' size='6'>" + delMer[0].OrgName + "</font>这条信息", function (Del) {
            if (Del) {
                $.post("/OrganizationSet/DeleteMer", delMer[0]).success(function (resp) {
                    if (resp == "1") {
                        $.messager.alert("友情提示", "删除成功！");
                        loadingTable();
                    }
                    else {
                        $.messager.alert("友情提示", "删除失败！");
                    }
                });
            }
        });
    }
    else {
        $.messager.alert("友情提示", "每次只能删除一行数据，你已经选择了<font color='red' size='6'>" + delMer.length + "</font>行", "info");
    }
}

    // 获取修改前数据呈现给用户
function UpdateMer() {
    
    var dateMer = $('#load').datagrid("getSelections");
    if (dateMer == 0) {
        $.messager.alert("友情提示", "每次只能修改一行数据，你已经选择了<font color='red' size='6'>" + dateMer.length + "</font>行", "info");
    }
    else {
        $('#update').window('open');
        $('#OrgName1').textbox('setValue', dateMer[0].OrgName);
        $('#OrgPassword1').textbox('setValue', dateMer[0].OrgPassword);
        $('#OrgPerson1').textbox('setValue', dateMer[0].OrgPerson);
        $('#OrgPhone1').textbox('setValue', dateMer[0].OrgPhone);
        $('#OrgAddress1').textbox('setValue', dateMer[0].OrgAddress);
        $('#OrgMers1').textbox('setValue', dateMer[0].OrgMers);
        $('#OrgWaltLimit1').textbox('setValue', (dateMer[0].OrgWaltLimit) / 100);
        $('#OrgWaltBalance1').textbox('setValue', dateMer[0].OrgWaltBalance);
        $('#OrgState1').textbox('setValue', dateMer[0].OrgState);
    }
    BindMerchants1();
}

    // 提交修改后的数据
function update() {

    //验证所有的文本框是否通过用户的验证
    var valid = $('#updateff').form('validate');
    if (valid == false) {
        return false;
    }

    var dateMer = $('#load').datagrid("getSelections");
    var postdata = {
        OrgID: dateMer[0].OrgID,
        OrgName: $('#OrgName1').val(),
        OrgPassword: $('#OrgPassword1').val(),
        OrgPerson: $('#OrgPerson1').val(),
        OrgPhone: $('#OrgPhone1').val(),
        OrgAddress: $('#OrgAddress1').val(),
        OrgMers: $('#OrgMers1').combobox('getValues').join(','),
        OrgWaltLimit: $('#OrgWaltLimit1').val(),
        OrgWaltBalance: $('#OrgWaltBalance1').val(),
        OrgWaltLastTime: $('#OrgWaltLastTime1').val(),
        OrgWaltLastOper: $('#OrgWaltLastOper1').val(),
        OrgState: $('#OrgState1').val(),

    };
    console.log(postdata.OrgWaltLimit);
    $.post("/OrganizationSet/UpdateMer", postdata).success(function (resp) {
        if (resp == "1") {
            $.messager.alert("友情提示", "修改成功");
            $('#update').window('close');//关闭弹窗
            loadingTable();
        }
        else {
            $.messager.alert("友情提示", "修改失败", "info");
        }
    }).error(function (resp) { console.log(resp); });
}

    // 弹出修改框并呈现修改前额度
function updateOrgWaltLimit(OrgID, OrgWaltLimit) {
    $('#updateOrgWaltLimit').window('open')
    $('#oldOrgWaltLimit').textbox('setValue', ((OrgWaltLimit) / 100)+"");
    $('#newOrgWaltLimit').textbox('setValue', "");
    $('#OrgID3').text(OrgID);
}

    // 提交修改后的额度 
function newOrgWaltLimit() {
    OrgID = $('#OrgID3').text();
    //alert(OrgID);
    OrgWaltLimit = $('#newOrgWaltLimit').val();

    if (OrgWaltLimit < 0) {
        $.messager.alert("友情提示", "账户额度不能为负数");
        return false;
    }

    $.post('/OrganizationSet/UpdateOrgWaltLimit?OrgID=' + OrgID + "&OrgWaltLimit=" + OrgWaltLimit).success(function (resp) {
        if (resp == "1") {
            $.messager.alert("友情提示", "修改成功");
            $('#updateOrgWaltLimit').window('close');//关闭弹窗
            loadingTable();
        }
        else {
            $.messager.alert("友情提示", "修改失败", "info");
        }
    }).error(function (resp) { console.log(resp); });
}

    // 商户集合 - 新增
function BindMerchants() {
    $.get("/OrganizationSet/GetMer1", {}, function (database) {
        console.log(database);
        $('#OrgMers').combobox({
            valueField: 'MerID',
            textField: 'MerName',
            data: database,
            multiple: true
        });
    })
}

    // 商户集合 - 修改
function BindMerchants1() {
    var dateMer = $('#load').datagrid("getSelections");
    $.get("/OrganizationSet/GetMer1", {}, function (database) {
        $('#OrgMers1').combobox({
            valueField: 'MerID',
            textField: 'MerName',
            value: dateMer[0].OrgMers,
            data: database,
            multiple: true
        });
        
    })
}

    // 清除添加框input中的数据
function Eliminate() {
    $('#OrgName').textbox('setValue', "");
    $('#OrgPassword').textbox('setValue', "");
    $('#OrgPerson').textbox('setValue', "");
    $('#OrgPhone').textbox('setValue', "");
    $('#OrgAddress').textbox('setValue', "");
    $("#OrgMers").textbox('setValue', "");
    $('#OrgWaltLimit').textbox('setValue', "");
    $('#OrgWaltBalance').textbox('setValue', "");
    $('#OrgWaltLastTime').textbox('setValue', "");
    $('#OrgWaltLastOper').textbox('setValue', "");
    $('#OrgState').textbox('setValue', "");
}


$.extend($.fn.validatebox.defaults.rules, {
    name: {
        validator: function (value, param) {
            return /^[\u0391-\uFFE5]+$/.test(value);
        },
        message: '请输入汉字'
    },
    mobile: {
        validator: function (value, param) {
            return /^[\d]*$/.test(value);
        },
        message: '只能输入数字'
    },
    tel: {
        validator: function (value, param) {
            return /^(\d{3}-|\d{4}-)?(\d{8}|\d{7})?(-\d{1,6})?$/.test(value);
        },
        message: '电话号码不正确'
    },
})
